$(function() {
    // 定义数据
    var q = {
        pagenum: 1, // 页码值
        pagesize: 8, // 每页显示的数据多少
        cate_id: "", // 分类的id
        state: "", // 文章的状态
    };

    template.defaults.imports.formatDate = function(value) {
        value = new Date(value);
        var y = value.getFullYear();
        var m = Zero(value.getMonth() + 1);
        var d = Zero(value.getDate());
        var h = Zero(value.getHours());
        var f = Zero(value.getMinutes());
        var s = Zero(value.getSeconds());
        return `${y}-${m}-${d} ${h}:${f}:${s}`;
    };

    function Zero(n) {
        return n < 10 ? "0" + n : n;
    }
    // 渲染文章列表
    renderArtList();

    function renderArtList() {
        $.ajax({
            method: "get",
            url: "/my/article/list",
            data: q,
            success: function(res) {
                if (res.status !== 0) {
                    return layui.layer.msg(res.message);
                }
                var htmlstr = template("tpl-table", res);
                $("tbody").html(htmlstr);
                // 每次渲染之前先把盒子清空
                $("#pageBox").html("");
                // 如果没有数据则不渲染
                if (res.data.length !== 0) {
                    renderPage(res.total);
                }
            },
        });
    }

    // 渲染文章类别
    getLeibie();

    function getLeibie() {
        $.ajax({
            method: "get",
            url: "/my/article/cates",
            success: function(res) {
                if (res.status !== 0) {
                    return layui.layer.msg(re.message);
                }
                var htmlstr = template("tpl-cate", res);
                $("[name=cate_id]").html(htmlstr);
                layui.form.render();
            },
        });
    }

    // 筛选功能
    $("#form-search").on("submit", function(e) {
        e.preventDefault();
        //  获取下拉列表的value
        var cate_id = $("[name=cate_id]").val();
        var state = $("[name=state]").val();
        // 给定义的数据重新赋值
        q.cate_id = cate_id;
        q.state = state;
        renderArtList();
    });

    // 分页
    function renderPage(total) {
        layui.laypage.render({
            elem: "pageBox", //注意，这里的 test1 是 ID，不用加 # 号
            count: total, //数据总数，从服务端得到
            limit: q.pagesize, // 计算页数  count/limit
            curr: q.pagenum, //页码值
            limits: [2, 4, 6, 8, 10],
            layout: ["count", "limit", "prev", "page", "next", "skip"],
            // jump触发方式：
            // 首次渲染分页按钮的时候，触发jump回调函数
            // 点击切换按钮的时候，也会触发jump回调函数
            jump: function(obj, first) {
                // obj 是分页对象
                // first 值是true,undefined
                // 如果是点击分页的时候才切换
                if (!first) {
                    // 获取当前页码值
                    q.pagenum = obj.curr;
                    // 获取条目
                    q.pagesize = obj.limit;
                    renderArtList();
                }
            },
        });
    }

    // 删除
    $("tbody").on("click", ".btn-delete", function() {
        // 获取删除按钮的个数
        var len = $(".btn-delete").length;
        var id = $(this).attr("data-id");
        layer.confirm("确定删除吗?", { icon: 3, title: "提示" }, function(index) {
            //do something
            $.ajax({
                method: "get",
                url: `/my/article/delete/${id}`,
                success: function(res) {
                    if (res.status !== 0) {
                        return layui.layer.msg(res.message);
                    }
                    layui.layer.msg(res.message);
                    if (len === 1) {
                        q.pagenum = q.pagenum == 1 ? (q.pagenum = 1) : q.pagenum - 1;
                    }
                    renderArtList();
                },
            });
            layer.close(index);
        });
    });
    $("tbody").on("click", ".btn-edit", function() {
        var id = $(".btn-edit").attr("data-id");
        // console.log(id);
        location.href = `./wz_edit.html?id=${id}`;
    });
});